// custom-tab-bar/index.js
const app = getApp();
Component({

    /**
     * 组件的属性列表
     */
    properties: {
        current: {
            type: Number,
            value: 0
        }
    },

    /**
     * 组件的初始数据
     */
    data: {
        current: 0,//App().globalData.current
        showShareModal: false
    },
    // lifetimes: {
    //     attached() {
    //       // 组件挂载时从全局数据获取当前tab
    //       this.setData({
    //         current: app.getCurrentTab()
    //       });
    //     }
    //   },
    lifetimes: {
        attached() {
            console.log('tabBar组件挂载');
            // 组件挂载时从全局数据获取当前tab
            this.setData({
                current: app.getCurrentTab()
            });
        }
    },
    pageLifetimes: {
        show() {
            // 页面显示时更新当前tab
            this.setData({
                current: app.getCurrentTab()
            });
        }
    },
    // lifetimes: {
    //     attached() {
    //         this.updateTabBarState();
    //     }
    // },

    // pageLifetimes: {
    //     show() {
    //         this.updateTabBarState();
    //     }
    // },
    /**
     * 组件的方法列表
     */
    methods: {
        // 显示分享二维码
        showShareQrcode() {
            this.setData({
                showShareModal: true
            }, () => {
                this.drawQrcode();
            });
        },

        // 隐藏分享二维码
        hideShareQrcode() {
            this.setData({
                showShareModal: false
            });
        },

        // 绘制二维码
        drawQrcode() {
            const ctx = wx.createCanvasContext('shareQrcodeCanvas', this);
            ctx.setFillStyle('#ffffff');
            ctx.fillRect(0, 0, 400, 400);

            // 绘制简单的二维码图案（实际使用时替换为真实二维码）
            ctx.setFillStyle('#2c9c56');
            ctx.setFontSize(20);
            ctx.setTextAlign('center');
            ctx.fillText('圣牧有机', 200, 180);
            ctx.fillText('小程序二维码', 200, 220);

            ctx.draw();
        },
        // 更新tabBar状态
        updateTabBarState() {

            const pages = getCurrentPages();
            debugger
            if (pages.length === 0) return;

            const currentPage = pages[pages.length - 1];
            const route = currentPage.route;
            const tabIndex = app.getTabIndexByPath(route);

            app.setCurrentTab(tabIndex);
            debugger
            this.setData({
                current: tabIndex
            });
        },
        // 保存二维码到相册
        saveQrcode() {
            wx.saveImageToPhotosAlbum({
                filePath: "https://xxx.xjdio.com/static/img/oold718AIydsl5sbOq-lH99Egmuk.jpg",
                success: () => wx.showToast({ title: '保存成功' })
              });
            // wx.canvasToTempFilePath({
            //     canvasId: 'shareQrcodeCanvas',
            //     success: (res) => {
            //         wx.saveImageToPhotosAlbum({
            //             filePath: res.tempFilePath,
            //             success: () => {
            //                 wx.showToast({
            //                     title: '保存成功',
            //                     icon: 'success'
            //                 });
            //                 this.hideShareQrcode();
            //             },
            //             fail: (err) => {
            //                 console.error('保存失败:', err);
            //                 wx.showToast({
            //                     title: '保存失败，请授权相册权限',
            //                     icon: 'none'
            //                 });
            //             }
            //         });
            //     },
            //     fail: (err) => {
            //         console.error('生成图片失败:', err);
            //         wx.showToast({
            //             title: '生成二维码失败',
            //             icon: 'none'
            //         });
            //     }
            // });
        },
        // switchTab(e) {
        //     const index = e.currentTarget.dataset.index;
        //     const path = e.currentTarget.dataset.path;
        //     this.setData({
        //         current: index
        //     });
        //     wx.switchTab({
        //         url: '/' + path
        //     });
        // },
        switchTab(e) {
            const index = e.currentTarget.dataset.index;
            const path = e.currentTarget.dataset.path;

            console.log('切换tab:', index, path);

            // 更新全局状态
            app.setCurrentTab(index);

            wx.switchTab({
                url: '/' + path
            });
        },
        scanCode() {
            wx.scanCode({
                success(res) {
                    console.log('扫码结果:', res.result);
                    wx.showToast({
                        title: '扫码成功',
                        icon: 'success'
                    });
                },
                fail(err) {
                    console.error('扫码失败:', err);
                    wx.showToast({
                        title: '扫码失败',
                        icon: 'none'
                    });
                }
            });
        }

    }
})